#ifndef SOBJC_COMMONS_PORT_H
#define SOBJC_COMMONS_PORT_H

#include <sobjc-commons/config.h>

#ifdef __cplusplus
#define OBJC_EXPORT extern "C"
#define OBJC_IMPORT extern "C"
#else
#define OBJC_EXPORT extern
#define OBJC_IMPORT extern
#endif

#include <stdio.h>
#include <stddef.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdarg.h>

#ifdef HAVE_LIMITS_H
#include <limits.h>
#else
#include <limit.h>
#endif

#ifdef HAVE_STRING_H
#include <string.h>
#else
#include <strings.h>
#endif

#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif

#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif

#ifdef HAVE_CTYPE_H
#include <ctype.h>
#else
#include <ctypes.h>
#endif

#include <sobjc-commons/bool.h>
#include <sobjc-commons/memory.h>

#endif /* SOBJC_COMMONS_PORT_H */

